// The class that holds it all together
// All states and anything that needs to be shared between states must get created/stored here
#ifndef CGAME_H_
#define CGAME_H_

#include <SFML\Window.hpp>
#include <SFML\Graphics.hpp>


class CMainMenuState;
class CInputManager;
// probably want to add a utilities class to do some basic things
class CGame
{
private:
	sf::RenderWindow *m_Window;

	// Just for starters
	sf::Font m_Font;
	sf::Text m_Text;
	sf::Text m_InputText;

	CInputManager	*m_cInputManager;
	CMainMenuState	*m_pMainMenu;
	void HandleEvents();
public:
	CGame();
	~CGame();
	bool Init(sf::RenderWindow &window);
	void Update(sf::Time timeElapsed);
	bool Input();
	void Render();
	void Shutdown();
	bool isWindowOpen();
	void CloseWindow();
};


#endif